The present invention relates to computing, and in particular, to a systems and methods for accessing applications based on user intent.
Unless otherwise indicated herein, the approaches described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section.
Computer applications have become ubiquitous in the work and private lives of users. Computer applications running on computer systems from servers to personal computers to personal digital assistants and cell phones permeate our lives. Typically, users load different computer software applications onto their computing devices based on their own personal needs and preferences. For example, a user of a work computer may use an Enterprise Resource Planning (“ERP”) software application, a communications and calendaring software application (e.g., Microsoft® Outlook®), and other work specific applications, whereas a home user may use a photo or video editing software application and other applications targeting hobbies and entertainment.
As computers and computer applications have become more prevalent, the line between business and personal use has become more blurred while the number of overlapping and competing applications continues to grow. Computer users may be interchanging between a work context and home context while working from home, for example, and may further have particular computing requirements that are more readily satisfied by one particular application over another depending on the use context. Accordingly, it may be desirable for computer applications to become more portable and readily accessible across different contexts. Additionally, it is an on-going challenge for particular applications to meet the particular needs of the user in a given context, and it would be desirable to understand the rapidly changing needs of each user in real time and allow users to access a wide variety of different applications more targeted to the job at hand.
While service-discovery and a loose-coupling of software components has occurred, the navigation and the expressiveness of user interfaces of business applications is still limited to navigating between landing pages (e.g., role-based) and packaged UI (ERP transactions or office applications). Currently, the information architecture of traditional computer software systems is described by navigational links between pre-packaged software and screens, and the system has limited or no understanding of the user intent and purpose of services. A conversation with the user and the system on how to achieve a goal is currently limited to proprietary and local applications (e.g. problem resolution wizards, map directions, domain-specific tools such as trip booking). But at the application level, such knowledge is currently not represented efficiently, and thus cannot support the user in choosing between multiple methods and services for accomplishing one action. For example ToDos in office products describe the task (due date, owner, status) but do not recommend the enactment itself (implementation of the action to accomplish the task).
Existing approaches to understanding user needs are typically limited to monitoring invocation of services (e.g., a user did or did not start Outlook®). However, current implementations are lacking the separation of user intent from the method or action to accomplish the intent. Consequently, today's application frameworks cannot have a conversation with the user about the appropriateness of a software product with respect to a user's intent, or alternatives with equivalent or superior functionality. The system cannot help users to become aware of available on-demand services in context of their needs or desires.
The present disclosure addresses these and other issues with systems and methods for accessing applications based on user intent modeling.